﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SOM.AbstractDALFactory;
using SOM.ConcreteDAL;
using SOM.ConcreteDALFactory;
using SOM.Model;

public partial class Reclamacao_PopupReclamacaoLocalizacao : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            uscReclamacaoLocalizacao.DesativarControlesEdicao();
            MarcarPosicao();
        }
    }

    private void MarcarPosicao()
    {
        if (Request["recId"] == null)
            return;
        
        int idReclamacao = int.Parse(SOM.Security.SOMSecurity.Decodificar(Request.QueryString["recId"].ToString()));

        SOMAbstractDALFactory factory = new SOMConcreteDALFactory();
        ReclamacaoDAL reclamacaoDAL = factory.CreateReclamacaoDAL();
        Reclamacao reclamacao = reclamacaoDAL.FindById(idReclamacao);

        if(reclamacao.loc_localizacao == null)
        {
            Response.Write("A reclamação não possui uma localização associada.");
            lkbFechar.Visible = true;
            uscReclamacaoLocalizacao.Mapa.Visible = false;
            return;
        }

        uscReclamacaoLocalizacao.MarcarPosicao(reclamacao.loc_localizacao.loc_ds_latitude.Value,reclamacao.loc_localizacao.loc_ds_longitude.Value);
    }
}
